Amazon S3のバージョニングを有効にしてみた

Amazon S3のバージョニングを有効にしてみた

Clock Icon2024.09.13

はじめに

こんにちは、 岩崎 です。
本記事では、S3のバージョニング機能を有効にすることでどのようなことができるのかを実際に試してみました。

バージョニングの機能について詳しく説明されているDevelopersIOの記事がございますので、詳細を知りたい方はこちらをご覧ください。

https://dev.classmethod.jp/articles/3minutes-s3-versioning-lifecycle/

やってみる

S3バケットのバージョニングを有効にする

S3バケットのバージョニングを有効にします。 バケット作成時でも作成後でも有効にすることができます。

作成時では、「バージョニングを有効にする」を選択します。
image.png

すでに作成されているバケットでバージョニングを有効にするには、プロパティの「バケットのバージョニング」の編集から、「バージョニングを有効にする」を選択します。
image.png
image.png

ファイルをアップロードしてみる

バージョニングを有効にしたら、ファイルをアップロードしてみます。 今回は、下記のHTMLファイルをアップロードしてみます。

index.html
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title>Hello</title>
</head>
<body>
    <h1>Hello World!</h1>
    <p>テストページです!</p>
</body>
</html>

次にアップロードしたファイルを選択して、「開く」をクリックします。

アップロードしたHTMLファイルがブラウザで開くことができます。 下記画像のように表示されます。
image.png


ファイルを更新してみる

HTMLファイルの中身を下記のように変更して、再度アップロードします。

index.html
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title>Hello</title>
</head>
<body>
    <h1>Hello World!</h1>
    <p>テストページを更新しました!</p>
</body>
</html>

アップロードが完了しましたら、先ほど同様ファイルを選択して「開く」をクリックします。
image.png


HTMLファイルが更新され、表示されている文字が変わっているのが確認できました。

最初にアップロードしたファイルはどこへ

バケット内には一つのindex.htmlのみがあるように見えています。
image.png

バケット内のファイルをクリックし、「バージョン」を選択します。 二つのバージョンがあるのが確認できます。
image.png

(現行バージョン)」となっている方が、新しいバージョンになります。 最終更新日時を確認しても、上部が新しいバージョンであることが確認できます。

下のバージョンにチェックをつけて「開く」をクリックしてみると、最初にアップロードしたHTMLファイルのブラウザ画面を確認することができます。
image.png
image.png


この画面から、ファイルをダウンロードしたり、削除したりなどのアクションをすることができます。

削除してしまったファイルを復元してみる

ファイルを誤って削除してしまった場合や元に戻したい場合、バージョニングを有効にしておくことで解決します。

バケットの画面に戻り、アップロードしたindex.htmlを選択して削除してみます。
image.png

確認画面が出るので、テキスト入力フィールドに「削除」と入力して、オブジェクトを削除します。
image.png

バケットからindex.htmlが削除されました。

復元するには、バージョンの表示をオンにします。
スクリーンショット 2024-09-12 14.44.48.png

削除したファイルと削除マーカーが表示されます。 今回は削除マーカーのみを選択して削除します。
image.png

削除が完了し、バージョン表示をオフにすると、削除前と同じように、バケット内にindex.htmlファイルがあることが確認できます。

現行バージョンを削除してみる

バージョンを一つ前に戻してみます。 オブジェクトのバージョンの画面から、現行バージョンを削除してみます。

現行バージョンは、最新のHTMLファイルであることが、「開く」から確認できます。
スクリーンショット 2024-09-12 14.48.54.png
image.png


現行バージョンを選択して、削除を実行します。
スクリーンショット 2024-09-12 14.50.00.png

完了したら、バージョンの欄が一つ減り、現行バージョンが最初にアップロードしたファイルになっています。
image.png

バケット内を確認してみても、index.htmlファイルがあることが確認でき、中身も更新前のファイルであることが確認できます。
image.png
image.png


まとめ

本記事では、S3のバージョニング機能の実用的な活用方法を紹介しました。
バージョニングを有効にすることで、ファイルの更新履歴を保持し、誤って削除したファイルの復元や以前のバージョンへの戻し方が可能になります。

具体的には、HTMLファイルのアップロードと更新、ファイルの削除と復元、そして現行バージョンの削除による以前のバージョンへの戻し方を実演しました。これらの機能は、データの安全性を高め、ミスからの復旧を容易にするため、S3を使用する際に非常に有用なツールとなります。

参考になりましたら幸いです。

参考資料

S3 バケットでのバージョニングの使用 - Amazon Simple Storage Service
絵で見て 3分でおさらいする Amazon S3 のバージョニングとライフサイクル | DevelopersIO

アノテーション株式会社について

アノテーション株式会社はクラスメソッドグループのオペレーション専門特化企業です。サポート・運用・開発保守・情シス・バックオフィスの専門チームが、最新 IT テクノロジー、高い技術力、蓄積されたノウハウをフル活用し、お客様の課題解決を行っています。当社は様々な職種でメンバーを募集しています。「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、アノテーション株式会社 採用サイトをぜひご覧ください。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.